package com.hehui.module.goods.service;

import com.hehui.module.goods.entity.GoodsCategory;

import java.util.List;

/**
 * 商品分类Service
 */
public interface IGoodsCategoryService {
    // 查询所有顶级分类 带商户id
    List<GoodsCategory> findGoodsCategoryTopAll(Long merchantId);
    // 根据上级分类id查询下级分类
    List<GoodsCategory> findGoodsCategoryByParentId(Long parentId);
    // 展开和收起 商户id
    List<GoodsCategory> findGoodsCategory(Long merchantId);
    // 查询商品分类的最大编号 带商户id
    String goodsCategoryFindMaxNum(Long merchantId);
    // 通过分类编号查询分类 带商户id
    List<GoodsCategory> findCateGoryGcNum(String gcNum,Long merchantId);
    // 通过分类名查询分类 带商户id
    List<GoodsCategory> findCateGoryGcName(String gcName,Long merchantId);
    // 添加分类
    int addGoodsCategory(GoodsCategory goodsCategory);
    // 根据默认值查询分类 带商户id
    List<GoodsCategory> findCateGoryByIsDef(String isDef,Long merchantId);
    // 根据修改分类默认值
    int upGoodsCateGoryIsDef(GoodsCategory category);
    // 根据主键id
    GoodsCategory findGoodsCategoryById(Long categoryId);
    // 修改分类
    int upGoodsCateGory(GoodsCategory goodsCategory);
    // 根据上级分类id查询 分类等级
    String findCateGoryGcLevelByParentId(Long gcParentId);
    // 根据商品分类主键id查询出对应商品
    List<BaseGoods> findBaseGoodsBycategoryId(Long categoryId);
    // 修改商品信息关联的分类id
    int upBaseGoodsCategoryId(BaseGoods baseGoods);
    // 根据分类主键id删除分类
    int delGoodsCategoryById(Long categoryId);
}
